#!/bin/sh
# Begin /etc/init.d/swap

### BEGIN INIT INFO
# Provides:            swap
# Required-Start:
# Should-Start:        modules
# Required-Stop:       localnet
# Should-Stop:
# Default-Start:       S
# Default-Stop:        0 6
# Short-Description:   Mounts and unmounts swap partitions.
# Description:         Mounts and unmounts swap partitions defined in 
#                      /etc/fstab.
# X-LFS-Default-Start: S20
# X-LFS-Default-Stop:  S80
# X-LFS-Provided-By:   LFS
### END INIT INFO

. /lib/lsb/init-functions

case "${1}" in
    start)
        message="Activating all swap files/partitions..."
        swapon -a
        evaluate_retval standard
        ;;

    stop)
        message="Deactivating all swap files/partitions..."
        swapoff -a
        evaluate_retval standard
        ;;

    restart)
        swapoff -a
        error_level="${?}"
        sleep 1
        swapon -a
        error_level="$(( ${error_level} + ${?} ))"
        (exit "${error_level}")
        evaluate_retval restart
        ;;

    status)
        log_success_msg "Retrieving swap status..."
        echo
        swapon -s
        ;;

    *)
        echo "Usage: ${0} {start|stop|restart|status}"
        exit 1
        ;;
esac

# End /etc/init.d/swap
